/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package smoker;

import java.util.HashSet;
import java.util.Set;

/**
 *
 * @author abd260
 */
public class Tisch {
    Set<Material> mats = new HashSet<Material>();
    
    public synchronized void put(Set<Material> mat) throws InterruptedException {
        while (mats.size() == 2)
            wait();            
           
        System.out.println("\t\tAgent legt " + mat +  " auf den Tisch");
        mats = mat;
        
        notifyAll();      
    }
    
    
    public synchronized void take(Material own) throws InterruptedException {
        while (mats.size() == 0 || mats.contains(own))
            wait();
        
        System.out.println("Smoker mit " + own + " nimmt "+ mats + ", rollt sich eine Zigarette und raucht diese");
        
        Thread.currentThread().sleep(500);
       
        System.out.println("Smoker mit "+ own + " hat fertiggeraucht");
        mats.clear();
			
        notifyAll();
    }
            
    
}
